package com.carleasoft.mps.adu.business.role.bean.vo;

import com.carleasoft.mps.core.user.Constants;
import com.carleasoft.mps.core.tree.DataBizTreeVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * <p>
 * 数据权限vo
 * </p>
 *
 * @author ztm
 * @since 2021-09-07
 */
@Data
@ApiModel(value="AuthorityDataPerms对象", description="数据权限编码集合表")
public class AuthorityDataPermsVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "数据权限类型")
    private Integer dataType = Constants.DATA_NOT;

    @ApiModelProperty(value = "数据权限code")
    private String dataCode;

    @ApiModelProperty(value = "被选中的，可能是组织分类编码、组织编码、部门编码")
    private List<String> permCodes = new ArrayList<>();

    @ApiModelProperty(value = "换算后能选择的组织分类编码合集")
    private List<String> orgTypeCodes = new ArrayList<>();

    @ApiModelProperty(value = "换算后所有能选择的组织编码合集")
    private List<String> orgCodes = new ArrayList<>();

    @ApiModelProperty(value = "换算后所有能选择的部门编码合集，添加人员职务可使用")
    private List<String> deptCodes = new ArrayList<>();

    @ApiModelProperty(value = "分类树")
    private List<DataBizTreeVo> orgTypeDataBizTreeVoList;

    @ApiModelProperty(value = "可能是组织分类编码、组织编码、部门编码构成的树结构,包括能看的能选的")
    private List<DataBizTreeVo> orgDataBizTreeVoList;

    @ApiModelProperty(value = "可能是组织分类编码、组织编码、部门编码构成的树结构,包括能看的能选的")
    private List<DataBizTreeVo> deptDataBizTreeVoList;
}
